#define _CRT_SECURE_NO_WARNINGS 1
//#include <stdio.h>
//
//int flb(int x)
//{
//	int a = 1;
//	int b = 1;
//	int c = 1;
//	if (x <= 2)
//	{
//		return 1;
//	}
//	while (x > 2)
//	{
//		a = b;
//		b = c;
//		c = a + b;
//		x--;
//	}
//	return c;
//}
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	int num = flb(n);
//	printf("%d", num);
//	return 0;

//#include <stdio.h>
//
//int CF(int x, int y)
//{
//	if (x <= 1)
//	{
//		return y;
//	}
//	else
//	{
//		return y * CF(x - 1, y);
//	}
//}
//
//int main()
//{
//	int k, n;
//	scanf("%d %d", &k, &n);
//	int num = CF(k, n);
//	printf("%d", num);
//	return 0;
//}

#include <stdio.h>
//int count = 0;	
//int num = 0;
//
//int ADD(int x)
//{
//	
//	if (x > 9)
//	{
//		ADD(x / 10);
//	}
//	num = x % 10;
//	count += num;
//	return count;
//}
//
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	int num = ADD(n);
//	printf("%d", num);
//	return 0;
//}

//
//void Print(int x)
//{
//	if (x >= 10)
//	{
//		Print(x / 10);
//	}
//	printf("%d ", x % 10);
//}
//
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	Print(n);
//	return 0;
//}

//
//int JC(int x)
//{
//	if (x <= 1)
//	{
//		return 1;
//	}
//	else
//	{
//		return x * JC(x - 1);
//	}
//}
//
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	int num = JC(n);
//	printf("%d", num);
//	return 0;
//}

////void JC(int x)
////{
////	int num = 1;
////	while (x > 1)
////	{
////		num *= x;
////		x--;
////	}
////	printf("%d", num);
////}
////
////int main()
////{
////	int n = 0;
////	scanf("%d", &n);
////	JC(n);
#include <stdio.h>

int getstrlen(char* pa)
{
	if (*pa != '\0')
	{
		return 1 + getstrlen(pa + 1);
	}
	else
	{
		return 0;
	}
}

int main()
{
	char arr[10] = { 0 };
	scanf("%s", arr);
	int num = getstrlen(&arr);
	printf("%d", num);
	return 0;
}